package com.brillilab.starter.entity.req.user;

import com.brillilab.domain.enums.base.BaseEnum;
import lombok.Data;

import java.io.Serializable;

/**
 * 用户安全信息修改请求参数类
 *
 * @author wmh
 */
@Data
public class UserModifyReq implements Serializable {

    private static final long serialVersionUID = 1L;


    /**
     * 修改类型 1-修改手机号 2-修改邮箱 3-修改密码 4-修改数据密码
     */
    private Integer type;
    /**
     * 新密码 type填 3 时必须传入
     */
    private String password;
    /**
     * 新数据密码 type填 4 时必须传入
     */
    private String securityPwd;
    /**
     * 新手机号 type填 1 时必须传入
     */
    private String mobile;
    /**
     * 新邮箱 type填 2 时必须传入
     */
    private String email;
    /**
     * 验证码 type填 1,2 时必须传入
     */
    private String validateCode;
    /**
     * 身份校验成功ID
     */
    private String validateId;

    /**
     * 身份证后六位
     */
    private String certificateNo;
    /**
     * 修改类型枚举
     */
    public enum Type{
        /**
         *  1 手机号，2 邮箱，3 登录密码，4 数据密码
         */
        MOBILE("手机验证",1),EMAIL("邮箱验证",2),PASSWORD("登录密码验证",3),SECURITY_PWD("数据密码验证",4);

        Type(String name,Integer code) {
            this.name=name;
            this.code=code;
        }

        private String name;
        private Integer code;

        public String getName() {
            return name;
        }

        public Integer getCode() {
            return code;
        }
    }


}
